package 代码记录.Bit48天集训;

import java.util.Scanner;

/**1.剪花布条(已搞定)
 * 2.客似云来(已搞定)
 * @author zx
 * @create 2022-05-31 19:54
 */
public class day_33 {
    /**
     * @param args 自己做的(debug):滑动窗口
     */
    public static void main2(String[] args) {
        Scanner sc = new Scanner(System.in);
        while(sc.hasNext()){
            String str = sc.nextLine();
            String[] arr = str.split(" ");
            String str1 = arr[0];
            String str2 = arr[1];
            int windowSize = str2.length();
            int left = 0;
            int res = 0;
            for(int right = 0 + windowSize;right <= str1.length();right++){
                String s = str1.substring(left,right);
                if(s.equals(str2)){
                    res++;
                    right = right + windowSize - 1;
                    left = left + windowSize;
                }else{
                    left++;
                }
            }
            System.out.println(res);
        }
    }

    /**
     * 这道题有几个坑，第一个是要用大数表示，32位的数表示不了，第二个是from和to可以是一样的
     * 如果两者一样，输出就是相应斐波那契数列的值
     */
    private static long[] dp = new long[81];//题目给定了最大数据范围
    public static void main(String[] args){
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNext()) {
            int from = scanner.nextInt();
            int to = scanner.nextInt();
            long res = 0;
            fib();
            for (int i = from; i <= to; i++) {
                res += dp[i];
            }
            System.out.println(res);
        }
    }
    private static void fib() {
        dp[1] = 1;
        dp[2] = 1;
        for (int i = 3; i < dp.length; i++) {
            dp[i] = dp[i - 1] + dp[i - 2];
        }
    }

}
